מבוא לתכנות מערכות מבחן מועד א' סמסטר חורף
|
|
- Amelia Summers
- 6 years ago
- Views:
Transcription
1 הפקולטה למדעי המחשב פרופ' גיל ברקת נועם שגב, שרי דואק, רן ברואר, דור כהן הטכניון מכון טכנולוגי לישראל מבוא לתכנות מערכות מבחן מועד א' סמסטר חורף הוראות כלליות משך המבחן: 081 דקות )שלוש שעות(. טופס המבחן מכיל XX עמודים, כולל עמוד זה. יש לענות על כל השאלות במקום המיועד לכך בטופס. מותר לכתוב גם בעט וגם בעיפרון. מומלץ ביותר ראשית לקרוא כל שאלה עד סופה, ורק אח"כ לענות. מותר השימוש בכל חומר עזר כתוב או מודפס. יש להקפיד על כתיבה ברורה ומסודרת של התשובות. על התשובות להיות קצרות ומדויקות ככל הניתן. אין לרשום קוד מיותר או עובדות כלליות שאינן קשורות לפתרון. אין צורך לתעד את הקוד בפתרונות. אין צורך להקפיד על code conventions כלשהם בעת כתיבת קוד. מבנה המבחן: שאלה סה"כ ניקוד /07 /6 /9 /07 /27 /.5 /.77 בהצלחה! 1
2 שאלה :. ADT 07( C נק'( בשאלה זו עליך לממש ADT בשם TRN )קיצור של )tournament התומך בטורניר בענף ספורט לבחירת המשתמש הלקוח מן הקבוצה כדורגל, כדורסל, כדוריד, בייסבול{. בניגוד למקובל, ניתן להגדיר עבור כל טורניר בנפרד האם מותרת תוצאת תיקו, ומה הניקוד הניתן עבור ניצחון/תיקו/הפסד. טורניר נערך בין n קבוצות, כאשר כל קבוצה מארחת בדיוק פעם אחת את כל יריבותיה. )לכן, כל קבוצה משחקת בדיוק 22n משחקים.( לקבוצות אין שמות, אלא פשוט אינדקסים בתחום 1n...0. הזוכה בטורניר היא הקבוצה אשר זכתה במירב הנקודות, ואם יש צורך בשובר שויון, הקבוצה אשר הפרש שעריה/סליה/וכד' טוב יותר, ואם עדיין יש צורך בשובר שויון, זו אשר ניצחה פעמים רבות יותר. סעיף א' )7. נק'( רשום קובץ מנשק התומך בפעולות הבאות: יצירת טורניר של n קבוצות בענף ספורט כלשהן. א. הוספת תוצאה של משחק לטורניר. ב. החזרת הקבוצה אשר זכתה בטורניר. ג. הריסת טורניר. ד. #ifndef _TRN #define _TRN typedef enum {FOOTBALL, BASEKETBALL, HANDBALL, BASEBALL Field; typedef enum {RESULT_ALREADY_EXISTS, TOURNAMENT_DID_NOT_END_YET, NO_SINGLE_WINNER,... TRN_Result; typedef struct TRN_rec* TRN; TRN TRN_Create (unsigned int n_teams, // how many teams Field field, // redundant, never used later Boolean draw_allowed, // whether or not draws are allowed Unsigned int points [3]); // points given for win/draw/loss TRN_Result TRN_AddGame (TRN trn, int first_team, int second_team, int result[2]); // Other combinations can work TRN_Result TRN_Winner (TRN trn, int* winner); void TRN_Destroy (TRN trn); סעיף ב' )5 נק'( עבור כל אחת מן הפעולות א', ב' וג' בסעיף הקודם, ציין/י קוד שגיאה ספציפי. :TRN_Create מספר קבוצות לא חוקי )0(, ניקוד לא הגיוני )למשל, ניקוד גבוה יותר לתיקו מאשר לניצחון( :TRN_AddGame משחק דווח כבר, אינדקס קבוצה לא חוקי :TRN_Winner הטורניר לא הסתיים )לא שוחקו עדיין כל המשחקים(, אין מנצח יחיד )כל שוברי השוויון לא עזרו( סעיף ג' )5 נק'( על איזה מבנה נתונים )אחד או יותר( אשר נילמד בכיתה היית מבסס/ת את?TRN מותר לבצע שינויים סבירים במבנה בו בחרת, אך יש לציין במפורש את כל השינויים. שני פתרונות פשוטים: א. גרף מכוון, בו כוון קשת מציין מי הקבוצה המארחת. בנוסף, יש להוסיף לקשת שדה תוצאה. ב. מטריצה רב מימדית [n][n][2][2] בה שני האינדקסים הראשונים הם הקבוצות, האינדקס השלישי הוא זהות המארחת, והאינדקס הרביעי עבור התוצאה. 2
3 )6 נק'(: שאלה C 0 A.h B.h main.c #ifndef A_H_ #define A_H_ #include <stdio.h> #ifndef B_H_ #define B_H_ #ifdef UNIX void print_unix(const char** in) { printf ("UNIX %s",*in); #else void print_windows(const char* in) { printf ("WINDOWS %s",in); #include <stdbool.h> #define UNIX true #include "A.h" נתונים הקבצים הבאים: #include "C.h" int main (int argc, char** argv){ print("hello"); return 0; קבע/י עבור כל אחת משלוש האפשרויות של,C.h האם התוכנית main.c תתקמפל ותרוץ תהיה השגיאה, ואם כן, מה יהיה הפלט של הרצתה. כהלכה. מה אם לא, 1) C.h 2) C.h 3) C.h #ifndef C_H_ #define C_H_ #include "B.h" #ifndef C_H_ #define C_H_ #include "B.h" #include "A.h" #ifndef C_H_ #define C_H_ #include "A.h" #include "B.h" #ifdef UNIX {print_unix(&in); #else {print_windows(in); #ifdef UNIX {print_unix(&in); #else {print_windows(in); #ifdef UNIX {print_unix(&in); #else {print_windows(in); לא מוגדר בעת שימוש print_unix 1 UNIX hello 2 UNIX hello 3 שגיאת קומפילציה 3
4 )9 נק'(: שאלה C 2 typedef struct node *Node; struct node { int n; Node next, prev; ; נתון מימוש פשוט של צומת עבור רשימה מקושרת דוכיוונית של מספרים שלמים :)int( תזכורת: רשימה מעגלית היא רשימה בה האיברים הראשון והאחרון מחוברים. כתב/י את הפונקציה doublel המקבלת את הצומת הראשון של רשימה מקושרת מעגלית. הפונקציה מחזירה רשימה מקושרת מעגלית חדשה אשר מכילה כל איבר מהרשימה המקורית פעמיים. לדוגמא, אם הרשימה המקורית כללה את הערכים 2 ו 5 )בסדר הזה(, הרשימה החדשה תכיל את הערכים 5 2, 2, ו 5 )בסדר הזה(. במקרה של כישלון, יש להחזיר.NULL שימו לב שהרשימות הן ללא איבר דמה. הפונקציה destroylist מקבלת את תחילתה של רשימה מקושרת דוכיוונית לא מעגלית חוקית ומשחררת את המידע השמור ברשימה ואת הזיכרון של הרשימה. ניתן להניח כי הפונקציה destroylist ממומשת וחתימתה נתונה: void destroylist(node); Node doublel(node head) { if (!head) return NULL; DLNode newhead = createdlnodes(head); if (!newhead) return NULL; DLNode tail = newhead>next; for (DLNode itr = head>next; itr!=head; iter=iter>next;){ if(!(tail>next = createdlnodes(itr))) { destroydllist(newhead); return NULL; tail>next>prev = tail; tail = tail>next>next; return newhead; static DLNode createdlnodes(dlnode in){ DLNode tmp1 = createdlnode(in); DLNode tmp2 = createdlnode(in); if (tmp1 && tmp2){ tmp1>next = tmp2; tmp2>prev = tmp1; return tmp1; else { free(tmp1); free(tmp2); return NULL; static DLNode createdlnode(dlnode in){ DLNode tmp = malloc(sizeof(*tmp)); if(tmp){ tmp>next = tmp>preav = NULL; tmp>n = in>n; return tmp; 4
5 )00 נק'(: Bash שאלה 4 בחברת הריגול האינטרנטית scroogel הגיעו למסקנה כי בידיהם משאב לא מנוצל כהלכה, העובדים בחברה. כדי לנצלם כהלכה, הוחלט על ידי הנהלת החברה להשתיל מערכות ריגול זעירות בעורף של כל עובד. כל מערכת ריגול שכזאת שולחת כל שניה מידע לשרתים הראשיים. המידע הנשלח בנוי ממחרוזת מזהה של העובד, שעה, מיקום, תיאור תמציתי )שתי מילים( מה העובד עושה. לדוגמא, שתי השורות הבאות יכולות להישלח למערכת : סעיף א' )0 נק'( 75A2FCE9 05:24: : sleep dreaming 75A2FCE9 10:54: : work presentation בשלב ראשון, המערכת הושתלה בעובדים בסניף הקטן של החברה בישראל. מטרת החברה היא לתת חיזוק חיובי לאלו המשקיעים יותר שעות בעבודה מאחרים וחיזוק שלילי לאלו המבזבזים זמן. כתוב/כתבי שורה אחת באמצעותה ניתן למצוא את העובדים המשקיעים את רוב זמנם בעבודה. על הפלט להיות מספרי הזיהוי של חמישים העובדים המשקיעים יותר זמן בעבודה משאר העובדים, ממוין בסדר יורד לפי שעות העבודה. שם הקובץ הוא.spy.israel כל מחרוזת בקובץ מופרדת באמצעות רווחים. ניתן לזהות עובדים אשר מבצעים עבודה לפי המילה הראשונה בתיאור התמציתי, שתהיה.work ניתן להניח כי הקובץ מכיל מספר שווה של שורות לכל עובד, כלומר, כל עובד נבדק על אותה תקופת זמן. ניתן להניח כי המחרוזת המזהה מכילה רק מספרים ואותיות ראשיות letters).(uppercase ניתן להניח כי מחרוזות התיאור מכילות רק אותיות לא ראשיות letters(.)lowercase אם שני עובדים עבדו אותו משך זמן, אין משמעות לסדר ההדפסה. כלומר, עליך להדפיס את מחרוזות הזיהוי של 51 העובדים להם יש מספר השורות הרב ביותר המכילה את המילה "work" בשדה המתאים. פתרון לדוגמא א' cat spy.israel cut d" " f1,4 grep w 'work' sort uniq c sort rbn cut d" " f2 head n50 פתרון לדוגמא ב' grep ' work ' cut d" " f1 sort uniq c sort rnb head n50 cut c9 סעיף ב' )4 נק'( איך הייתה משתנה התשובה לסעיף הקודם אם הדרישה הייתה כי על הפלט להיות מספרי הזיהוי של חמישים העובדים המשקיעים את רוב זמנם לא בעבודה, וממוין בסדר עולה? היינו מוסיפים דגל "v" לgrep ואת המיון השני היינו מבצעים ללא הדגל "r". סעיף ג' ).. נק'( המנהלים היו מרוצים מהתוצאות הראשוניות של הניסוי. זיהוי עובדים מצטיינים ותגמולם ופיטורי העובדים הלא מוצלחים העלה את פוריות הסניף. כדי להתקדם לשלב השני של הניסוי, יש לטפל במספר מסקנות אשר עלו מהשלב הראשון. המילה הראשונה בתיאור התמציתי לא מספיקה. הניסוי הבא יתבצע על מספר סניפים במספר מדינות. עובדים אשר עובדים יותר שעות אינם בהכרח היעילים או הטובים ביותר. כעת עליך לכתוב תסריט אשר ידפיס את חמישים העובדים המוצלחים בחברה. התסריט מקבל שני פרמטרים, הראשון הינו קובץ הגדרות המכיל מספר שורות, כל שורה מכילה מספר ומחרוזת של שתי מילים. הפרמטר השני הוא קובץ, כמו קובץ spy.israel שראינו קודם, או ספריה. על התסריט למיין את רשימת העובדים בקובץ spy כפי שיוסבר בהמשך, או אם התקבלה ספריה במקום קובץ יש לבצע את הפעולה רקורסיבית על כל קבצי הspy והספריות תחת הספרייה הנתונה. דוגמא לקובץ הגדרות חוקי: 2 travel work 5
6 1 work present בחירת חמישים העובדים תתבצע על פי הקריטריונים הבאים: א. לשם קביעת הצלחה, נתייחס רק לשורות המכילות תיאור תמציתי אשר מופיע בקובץ ההגדרות. המספר לצד התיאור התמציתי הינו ציון העבודה )לא העובד(. ב. עובדים אשר ביצעו עבודה אשר מתוארת בקובץ ההגדרות עם ציון i באופן אוטומטי יחשבו לטובים יותר מעובדים אשר ביצעו עבודה מתוארת בקובץ ההגדרות עם ציון 1+i. ג. עובד יכול להופיע בפלט מספר פעמים אך לכל היותר פעם אחת לכל פעולה )תיאור תמציתי(. ד. מבין שני עובדים אשר ביצעו עבודה המדורגת בציון i יועדף זה אשר ביצע אותה יותר פעמים. ניתן להניח כי אף עובד לא מופיע בשני קבצי.spy שים/י לב, אין להשתמש בקבצים זמניים. function printall { if [[ f $1 ]]; then cat $1 else for f in `ls`; do printall "$1/$f" done fi פתרון לדוגמא א' function findtext { while read line; do printall $2 grep " ${line$" cut d" " f1 sort uniq c sort rnb cut c9 done sort n $1 cut d" " f2 findtext head n50 פתרון לדוגמא ב' )בלי פונקציות עזר( priorities=() sort n $1 while read a line; do priorities[${line[1]]="${line[*]:1" done for p in priorities; do grep r " $p$" $2 cut d":" f2 cut d" " f1" sort uniq c sort nr cut c9 done head n50 6
7 )27 נק'( :C++ שאלה 5 בשאלה זו אנו נרצה ליצור את התשתית לפעולות מתמטיות מורכבות. אנו נרצה לממש סט מחלקות המאפשרות הפעלת פונקציות על ערך כלשהו, כמו גם שרשור פונקציות מתמטיות. סעיף א' )6 נק'( כתוב/כתבי את המחלקה האבסטרקטית.Function המחלקה מתארת פעולה אחת, כלומר פונקציה מתמטית יחידה. שים/י לב, סוגים שונים של Function יוכלו לעבוד על טיפוסים מתמטיים פרימיטיביים כמו גם על טיפוסים מתמטיים מורכבים, אך Function יחיד יכול לעבוד על טיפוס אחד בלבד. ניתן להניח כי פונקציה מתמטית עובדת על ערך יחיד ומחזירה ערך מאותו הטיפוס. template <class T> class Function { virtual ~Function(){ virtual T operator() (const T&) const = 0; Adder וChainer כך שהקוד הבא יתקמפל וירוץ כנדרש: int main() { Adder<int> adder(5); // adder(x) = x + 5 adder.set(3) // adder(x) = x + 3 const Multiplyer<int> multiplyer(4); // multiplyer(x) = x * 4 cout << adder(2) << endl; // adder(2) = 5 סעיף ב' )5. נק'( כתוב/כתבי את המחלקות Chainer<int> chainer(adder); chainer.add(multiplyer); // chainer(x) = (x + 3) * 4 cout << chainer(2) << endl; // chainer(2) = 20 Chainer<int> chainer2; // chainer2(x) = x const Multiplyer<int> multiplyer2(3); // multiplyer2(x) = x * 3 const Adder<int> adder2(2); // adder2(x) = x + 2 chainer2.add(multiplyer2); chainer2.add(adder2); // chainer2(x) = (x * 3) + 2 chainer.add(chainer2); // chainer(x) = chainer2((x + 3) * 4) cout << chainer(2) << endl; // chainer(2) = chainer2(20) = 62 return 0; ניתן להשתמש באוספים מה STL לצורך מימוש סעיף זה. ניתן להניח כי המחלקה Multiplier ממומשת. אין לכתוב קוד מיותר או לא נדרש. template<class T> class Adder : Function<T>{ T val; explicit Adder(const T& n) : val(n){ set(const T& n) {val = n T operator() (const T& in) { return in+val; template<class T> class Chainer : Function<T>{ 7
8 std::vector<const Function<T>* > functions; Chainer(const Function<T>& func) : functions(1,&func) { Chainer() =default; add(const Function<T>& func) {functions.pushback(&func); T operator() (const T& in) { T val = in; for (auto& it : functions){ const Function<T>& func = *it; val = func(val); return val; copy c'tor operator+ operator<< opeartor= d'tor סעיף ג' )4 נק'( מהן הדרישות על הטיפוס הטמפלייטי T בהגדרת המחלקות?Adder, FunctionChainer סעיף ד' )5 נק'( מספר מהנדסים ניסו להשתמש בתשתית שכתבנו אך שמו לב להתנהגות משונה. למשל, התוכנית הבא מדפיסה 8. int main() { Adder<int> adder(5); // adder(x) = x + 5 Chainer<int> chainer(adder); // chainer (x) = x + 5 adder.set(3); // adder(x) = x + 3 chainer.add(adder); // chainer (x) = (x + 5) + 3 cout << chainer(2) << endl; // chainer(2) = 10 return 0; הסביר/י מדוע הדבר קורה ומצא/י עוד שגיאה אשר עלולה להתרחש בזמן ריצה. הדבר קורה מאחר שchainer מחזיק מצביע לפונקציה ולא עותק של פונקציה. הדבר גם יגרום לשגיאה בזמן ריצה אם הפונקציה תחזיר Chainer ותנסה להשתמש בו, מאחר שכל המצביעים יהיו למשתנים לוקאליים שכבר נהרסו בזמן סגירת הפונקציה 8
9 :C++.5( נק'( שאלה 6 ממוצע פונקציונאלי הינו ממוצע חשבוני של תוצאות הפעלת פונקציה על ערכים שונים, לא בהכרח מספריים, בתנאי שתוצאת הפונקציה תמיד מספרית. ברצוננו לחשב ממוצע פונקציונאלי של איברים במבנה נתונים כלשהו. סעיף א' )8 נק'( כתוב/כתבי את הפונקציה funcavg אשר מקבלת תחום כלשהו ומחשבת ממוצע פונקציונאלי באותו תחום עבור פונקציה לבחירת המשתמש. אם אין איברים בתחום יש לזרוק חריגה מתאימה. template <class Iterator, class Operator> double funcavg(iterator begin, Iterator end, Operator op){ if (begin == end) throw EmptyRangeException int num = 0; double sum = 0; for (Iterator it = begin; it!= end; ++it){ ++num; sum += op(*it); return (sum/num); סעיף ב' )0 נק'( בתרגולים ראינו את המחלקה Shape ומספר מחלקות היורשות ממנה. כתוב/כתבי את הפונקציה largeaverage אשר מקבלת אוסף סדור )ווקטור( של צורות ומחזירה את ממוצע השטח של שלושת הצורות בעלות השטח הגדול ביותר. כמו כן, יש לכתוב כל קוד נוסף שנדרש כדי שהפונקציה תעבור הידור וקישור ותרוץ. ניתן להניח כי הווקטור ממוין על פי שטח בסדר עולה. ניתן להניח כי בווקטור ישנם לפחות שלושה איברים. יש להשתמש בפונקציה funcavg מהסעיף הקודם. תזכורת: Shape.h Square.h Circle.h class Shape { int center_x, center_y; Shape(int x, int y) : center_x(x), center_y(y) { virtual ~Shape() { virtual double area() const = 0; ; class Circle : public Shape { int radius; Circle(int x, int y, int radius) : Shape(x,y), radius(radius) { virtual double area() const { return radius*radius*pi; ; class Square : public Shape { int edge; Square(int x, int y, int edge) : Shape(x,y), edge(edge) { virtual double area() const { return edge*edge; ; double largeaverage(std::vector<shape*>& in){ return funcavg(in.end()3, in.end(), Area()); class Area { double operator() (Shape* shape) { return shape>area(); 9
לתיכנות עם MATLAB Lecture 5: Boolean logic and Boolean expressions
מבוא לתיכנות עם MATLAB 234127 Lecture 5: Boolean logic and Boolean expressions Written by Prof. Reuven Bar-Yehuda, Technion 2013 Based on slides of Dr. Eran Eden, Weizmann 2008 1 >>g = [89 91 80 98]; >>p
More informationלתיכנות עם MATLAB Lecture 5: Boolean logic and Boolean expressions
מבוא לתיכנות עם MATLAB 23427 Lecture 5: Boolean logic and Boolean expressions Written by Prof. Reuven Bar-Yehuda, Technion 203 Based on slides of Dr. Eran Eden, Weizmann 2008 ביטויים לוגיים דוגמא: תקינות
More information<exp> ::= <define> <cexp> <define> ::= ( define <var-decl> <cexp> ) / DefExp(var:VarDecl, val:cexp)
הנחיות כלליות: תאריך הבוחן: 10.5.2018 שם המרצה: מני אדלר,מיכאל אלחדד, ירון גונן מבחן בקורס: עקרונות שפות תכנות מס' קורס: 202-1-2051 מיועד לתלמידי: מדעי המחשב והנדסת תוכנה שנה: ב' סמסטר: ב' משך הבוחן: 2
More informationPractical Session - Heap
Practical Session - Heap Heap Heap Maximum-Heap Minimum-Heap Heap-Array A binary heap can be considered as a complete binary tree, (the last level is full from the left to a certain point). For each node
More informationמבוא למדעי המחשב תרגול 13: עצים בינאריים
מבוא למדעי המחשב תרגול 13: עצים בינאריים עצים בינאריים - הגדרה הגדרה: עץ בינארי הוא עץ ריק (בלי צמתים) או עץ המורכב משורש ושני תתי-עצים, הוא עץ בינארי. ימני ושמאלי, שכל אחד מהם תרגיל 1 עץ בינארי מסודר
More informationמבוא לתכנות ב- JAVA תרגול 7
מבוא לתכנות ב- JAVA תרגול 7 רקורסיה - הקדמה הגדרה רקורסיבית: חדר הוא מסודר אם צד שמאל שלו מסודר שלו מסודר. וצד ימין שיטת פתרון רקורסיבית: פתרון מופעים פשוטים יותר של בעיה בכדי לפתור את הבעיה המקורית רקורסיה
More informationרזח יליגרתו םי יראני ב ם
מבוא למדעי המחשב עצים בינאריים ותרגילי חזרה תרגול 13: עצים בינאריים - הגדרה הגדרה: עץ בינארי הוא עץ ריק )בלי צמתים( או עץ המורכב משורש ושני תתי-עצים, הוא עץ בינארי. ימני ושמאלי, שכל אחד מהם שאלה עץ בינארי
More informationב ה צ ל ח ה! אוניברסיטת בן גוריון בנגב מספר נבחן : תאריך המבחן: כ"ה תשרי תשע"ח 15/10/17 שמות המורים: ציון סיקסיק מיועד לתלמידי : א'
אוניברסיטת בן גוריון בנגב מספר נבחן : תאריך המבחן: כ"ה תשרי תשע"ח 15/10/17 שמות המורים: ציון סיקסיק א' ב- C תכנות מבחן ב: 202-1-9011 מס' הקורס : הנדסה מיועד לתלמידי : א' מועד קיץ סמ' שנה תשע"ז 3 שעות משך
More informationתוכנה 1 סמסטר א' תשע"א
General Tips on Programming תוכנה 1 סמסטר א' תשע"א תרגול מס' 6 מנשקים, דיאגרמות וביטים * רובי בוים ומתי שמרת Write your code modularly top-down approach Compile + test functionality on the fly Start with
More informationתוכנה 1 תרגול 2: מערכים, מבני בקרה ושגיאות
תוכנה 1 תרגול 2: מערכים, מבני בקרה ושגיאות מערכים Array: A fixed-length data structure for storing multiple values of the same type Example: An array of odd numbers: Indices (start from 0) 0 1 2 3 4 5
More informationAlgorithms. Intro2CS week 5
Algorithms Intro2CS week 5 1 Computational problems A computational problem specifies an inputoutput relationship What does the input look like? What should the output be for each input? Example: Input:
More informationתרגול 4 פונקציות. מבנה של פונקציה: public static <return value type> <function name> (<arg1 type> <arg1>, <arg2 type> <arg2>, ) { <function body> }
נושאי התרגול: מה הן פונקציות הגדרת פונקציה,קריאה לפונקציה העברת ארגומנטים,החזרת ערך או void העברת משתנים פרימיטיביים ומערכים לפונקציה העמסה של פונקציות תרגול 4 פונקציות מוטיבציה לעיתים,אנו נזקקים לבצע
More informationהנכות 1 םוכיס לוגרת 13 1
תוכנה 1 סיכום תרגול 13 1 קצת על מנשקים מנשק יכול להרחיב יותר ממנשק אחד שירותים במנשק הם תמיד מופשטים וציבוריים public interface MyInterface { public abstract int foo1(int i); int foo2(int i); The modifiers
More informationהנכות 1 תואיגש םע תודדומתהו תואלול,םי : כרעמ 2 לוגרת
תוכנה 1 תרגול 2: מערכים, לולאות והתמודדות עם שגיאות מערכים מערכים Array: A fixed-length data structure for storing multiple values of the same type Example from last week: An array of odd numbers: Indices
More informationתוכנה 1 תרגול 2: מערכים ומבני בקרה
תוכנה 1 תרגול 2: מערכים ומבני בקרה 2 Useful Eclipse Shortcuts Ctrl+1 quick fix for errors, or small refactoring suggestions Ctrl+SPACE code content assist (auto-completion) Auto completion for main create
More informationהנכות 1 תואיגש םע תודדומתהו תואלול,םיכרעמ : לו 2 גרת
תוכנה 1 תרגול 2: מערכים, לולאות והתמודדות עם שגיאות מערכים Array: A fixed-length data structure for storing multiple values of the same type Example from last week: An array of odd numbers: Indices (start
More informationתזכורת: עץבינארי מבוא למדעי המחשב הרצאה 24: עצי חיפוש בינאריים
מבוא למדעי המחשב הרצאה 2: עצי חיפוש בינאריים תזכורת: עץבינארי בנוסףלרשימהמקושרת ומערך, הצגנומבנהנתונים קונקרטיחדש עץבינארי עץבינארימורכבמ: שורש תת-עץשמאלי תת-עץימני A B C D E F G 2 תזכורת: שורש ותתי-עצים
More informationExams questions examples
Exams questions examples 1 Exam example 1. y - x what נק' ( לפניך הפעולה הרקורסיבית מקבלת כפרמטרים שני מספרים שלמים ו 10 )? מה יהיה הפלט כתוצאה מזימון הפעולה what public static int what(int x, int y) if(x
More informationשים לב! אין לכתוב בשוליים. השוליים יחתכו לצורך סריקת המבחן.
מספר : 804042 שם המרצה: תאריך הבחינה: ד"ר גדעון גרדוול, ד"ר אריאלה ריכרדסון 13/02/2013 משך הבחינה )בדקות(: 150 חומר עזר מותר לשימוש: ללא חומר עזר מחשבון: ללא מחשבון מס' תלמיד: מכון: לב/נוה, טל, טל-דעת,
More informationתוכנה 1 טיפוסי השפה טיפוסים לא פרימיטיביים הטיפוסים הפרימיטיביים מחרוזות המרה למספרים תרגול 2: טיפוסי שפה, מחרוזות, מערכים ושגיאות
טיפוסי השפה תוכנה 1 תרגול 2: טיפוסי שפה, מחרוזות, מערכים ושגיאות טיפוסים יסודיים (פרימיטיביים): 8 טיפוסים מוגדרים בשפה שמיועדים להכיל ערכים פשוטים: מספרים שלמים: byte, short, int, long מספרים ממשיים: float,
More informationמבוא למדעי המחשב תרגול 8 רשימה משורשרת כללית, Comparator
מבוא למדעי המחשב 2017 תרגול 8 רשימה משורשרת כללית, Comparator בתרגול היום. LinkedList בניית ההכללה מ- LinkIntList תרגול המבנה ושימושיו ממשקים: Comparator Sorted Linked List ל- LinkedList ע"י שימוש ב- Comparator
More informationתוכנה 1 * לא בהכרח בסדר הזה
תוכנה 1 תרגול 7: מנשקים, פולימורפיזם ועוד * לא בהכרח בסדר הזה 2 מנשקים מנשקים מנשק )interface( הוא מבנה תחבירי ב- Java המאפשר לחסוך בקוד לקוח. מנשק מכיל כותרות של מתודות המימוש שלהן. )חתימות( ללא קוד אשר
More informationכתבו קוד ב- 3 קבצי ה hpp (כתבו כהערה את שם הקובץ מעל) כך שהקוד יהיה תקין ובסגנון טוב. אין חובה
פקולטה: מדעי הטבע מחלקה: מדעי המחשב שם הקורס: מבנה זכרון ושפת ++C קוד הקורס: 7027810 תאריך בחינה: שאלות לדוגמא משך הבחינה: שעתיים שם המרצים: ד"ר אופיר פלא, ד"ר מירי בן ניסן חומר עזר: פתוח שימוש במחשבון:
More informationסכום (סדרת ערכים) אחרת - דוגמא: סכום-ספרות (num) אם < 10 num החזר 1 או אם = 0 = num החזר 0 public static int numofdigits (int num)
1 תבנית צבירה תבניות אלגוריתמיות לפעולות רקורסיביות תבנית צבירה לסדרת ערכים: סכום (סדרת ערכים) החזר את ערך הקצה + סכום (סדרת הערכים ללא ערך הקצה) דוגמא: פעולה המחזירה את סכום הספרות שבמספר שלם לא שלילי
More informationIntroduction to Programming in C תרגול 8
Introduction to Programming in C תרגול 8 1 1 נושאים מצביעים רקע אופרטורים על מצביעים מצביעים כפרמטרים לפונקציה הקצאה דינמית מבנים תאור הזיכרון של המחשב: מצביעים ניתן לחשוב על זיכרון המחשב כעל רצף של תאים,
More informationEngineering Programming A
Engineering Programming A תרגול 5 25.11.2012 מערכים חד-מימדיים )תזכורת( לדוגמא: מערך בשם Arr בגודל 8 שאיבריו מטיפוס int 3 7 5 6 8 1 23 16 0 1 2 3 4 5 6 7 ב - arr[0] ב יושב ערך שהוא המספר השלם 3 arr[1]
More informationמצליחה. 1. int fork-bomb() 2. { 3. fork(); 4. fork() && fork() fork(); 5. fork(); printf("bla\n"); 8. return 0; 9. }
שאלה : (4 נקודות) א. ב. ג. (5 נקודות) הגדירו את המונח race-condition במדוייק לא להשמיט פרטים. ספקו דוגמא. (5 נקודות) מהו? Monitor נא לספק הגדרה מלאה. ( נקודות) ( נקודות) ציינו כמה תהליכים יווצרו בקוד הבא
More informationמערכים שעור מס. 4 כל הזכויות שמורות דר ' דרור טובי המרכז האוניברסיטאי אריאל 1
מערכים שעור מס. 4 דרור טובי דר' כל הזכויות שמורות דר ' דרור טובי המרכז האוניברסיטאי אריאל 1 למה מערכים? ברצוננו לאחסן בתוכנית ציוני בחינה כדי לחשב את ממוצע הציונים וסטיית התקן. נניח ש 30 סטודנטים לקחו
More informationComputer Programming A תרגול 9
Computer Programming A תרגול 9 1 מטרת התרגול הקצאת זיכרון מבנים רשימות דינאמית ניהול הזיכרון בתוכנית עד כה כל המשתנים שראינו היו לוקאליים. משך הקיום של משתנים מקומיים הוא הזמן אשר הפונקציה בה הם נמצאים
More informationלתיכנות עם MATLAB Lecture 5: Boolean logic and Boolean expressions
מבוא לתיכנות עם MATLAB 234127 Lecture 5: Boolean logic and Boolean expressions Written by Prof. Reuven Bar-Yehuda, Technion 2013 Based on slides of Dr. Eran Eden, Weizmann 2008 1 motivation Proper academic
More informationמבוא לתכנות ב- JAVA מעבדה 2
מבוא לתכנות ב- JAVA מעבדה 2 מה בתרגול טיפוסים פרימיטיביים המרות טיפוסים אופרטורים יחסיים ולוגיים משפט if-else בתרגול הקודם טיפוסים פרימיטביים לייצוג מספרים שלמים וממשיים ואופרטורים לפעולות בין מספרים.1
More informationהנכות 1 םוכיס לוגרת 13 1
תוכנה 1 סיכום תרגול 13 1 בחינה באופק! הבחינה תכלול את כל הנושאים שכיסינו במהלך הסמסטר: כל ההרצאות כל תרגולים כל תרגילי בית חומר סגור שאלות אמריקאיות 2 קצת על מנשקים מנשק יכול להרחיב שירותים במנשק הם תמיד
More informationתוכנה 1 * לא בהכרח בסדר הזה
תוכנה 1 תרגול 7: מנשקים, פולימורפיזם ועוד * לא בהכרח בסדר הזה 2 מנשקים מנשקים - תזכורת מנשק )interface( הוא מבנה תחבירי ב- Java המאפשר לחסוך בקוד לקוח. מנשק מכיל כותרות של מתודות )חתימות(. מימוש דיפולטיבי
More informationמשתנים שעור מס. 2 כל הזכויות שמורות דר ' דרור טובי המרכז האוניברסיטאי אריאל 1
משתנים שעור מס. 2 דרור טובי דר' כל הזכויות שמורות דר ' דרור טובי המרכז האוניברסיטאי אריאל 1 תפקיד המשתנים הצהרה על משתנה השמת ערך במשתנה int a, b, c; a = 1234; b = 99; c = a + b; משתנים מאפשרים לנו לשמור
More informationהנכות 1 םוכיס לוגרת 14 1
תוכנה 1 סיכום תרגול 14 1 קצת על מנשקים מנשק יכול להרחיב יותר ממנשק אחד שירותים במנשק הם תמיד מופשטים וציבוריים public interface MyInterface { public abstract int foo1(int i); int foo2(int i); The modifiers
More informationעמוד 1 (תאריך ( âùéä ער äìàù בכל השאלות ניתן להניח שהקלט תקין. 100 íåëñ חורף :
עמוד 1 מבוא למדעי המחשב מ' 234114 מבוא למדעי המחשב ח' 234117 מבחן מועד א', סמסטר חורף תשס"ב (תאריך ( 29.1.03 שם משפחה שם פרטי מס' סטודנט âùéä ער äìàù 15 1 15 2 16 3 18 4 16 5 20 6 100 íåëñ חומר עזר: אין
More informationתוכנה 1. תרגול מספר 11: Static vs. Dynamic Binding מחלקות מקוננות Nested Classes
תוכנה 1 תרגול מספר 11: Static vs. Dynamic Binding מחלקות מקוננות Nested Classes class Outer { static class NestedButNotInner {... class Inner {... מחלקות מקוננות NESTED CLASSES 2 מחלקה מקוננת Class) )Nested
More informationתוכנה 1 תרגול מספר 13
1 תוכנה 1 תרגול מספר 13 ו- HashCode Equals עוד על טיפוסים מוכללים )Advanced Generics( חריגים )Exceptions( בית הספר למדעי המחשב אוניברסיטת תל אביב 1 2 ו- HASHCODE EQUALS 3 תזכורת: המחלקה Object package
More informationAmortized Analysis, Union-Find,
Practical Session No. 13 Amortized Analysis, Union-Find, AMORTIZED ANALYSIS Refers to finding the average running time per operation, over a worst-case sequence of operations. Amortized analysis differs
More informationתוכנה 1 בשפת Java נושאים שונים בהורשה רובי בוים ומתי שמרת בית הספר למדעי המחשב אוניברסיטת תל אביב
תוכנה 1 בשפת Java נושאים שונים בהורשה רובי בוים ומתי שמרת בית הספר למדעי המחשב אוניברסיטת תל אביב Today Static vs. Dynamic binding Equals / hashcode String Immutability (maybe) 2 Static versus run-time
More informationתוכנה 1 תרגול מספר 13
1 2 תוכנה 1 תרגול מספר 13 ו- HashCode Equals עוד על טיפוסים מוכללים )Advanced Generics( ו- HASHCODE EQUALS חריגים )Exceptions( בית הספר למדעי המחשב אוניברסיטת תל אביב 1 3 4 package java.lang; תזכורת: המחלקה
More informationהנכות 1 םוכיס לוגרת 13 1
תוכנה 1 סיכום תרגול 13 1 בחינה באופק! הבחינה תכלול את כל הנושאים שכיסינו במהלך הסמסטר: כל ההרצאות כל תרגולים כל תרגילי בית חומר סגור שאלות אמריקאיות 2 קצת על מנשקים מנשק יכול להרחיב יותר ממנשק אחד שירותים
More informationשאלה 1 מהו הפלט של התוכנית הבאה:
תרגול חזרה שאלה 1 מהו הפלט של התוכנית הבאה: public sttic int wht(int n) { int i; int sum=0; if(n == 0) return 1; for (i=0; i
More information3 Dynamic Routing A (RIP and OSPF)
אוניברסיטת בן גוריון בנגב המחלקה להנדסת מערכות תקשורת רשתות תקשורת מחשבים - 2 קורס 37110211 מעבדה בתקשורת מחשבים 3 Dynamic Routing A (RIP and OSPF) בשבוע (29/11/2011) 5 בשבוע (13/12/2011) 7 מעבדה מספר
More informationמבוא לתכנות בשפת C. Tzachi (Isaac) Rosen
מבוא לתכנות בשפת C מצביעים והקצאה דינאמית כתובות של משתנים לכל משתנה כתובת של המקום שלו בזיכרון כבר ראינו: שם של מערך הוא למעשה הכתובת של התא הראשון )באינדקס 0( של המערך להזכירכם: תא של מערך הינו משתנה
More informationשאלות חזרה 2 האוניברסיטה החליטה לפרסם שמות הסטודנטים המצטיינים בקורס שלנו. סטודנט מצטיין הוא סטודנט שקיבל
שאלות חזרה שאלה - 3 קבצים נתונים שני קבצים: ) קובץ נתוני הסטודנטים של הקורס שלנו, כל שורה בקובץ מכילה את הפרטים הבאים: תווים - שם הסטודנט - תווים - כתובת - 9 ספרות - מספר ת.ז. - 3 ספרות - קוד מחלקה - 3
More informationמבוא לתכנות ב- JAVA מעבדה 4
מבוא לתכנות ב- JAVA מעבדה 4 מה בתרגול מערכים מחרוזות מערך חד מימדי מערך הוא מבנה המחזיק סדרה של איברים מאותו טיפוס גודל המערך הוא קבוע )נקבע בעת יצירת המערך( הגישה לכל איבר היא באמצעות אינדקס למה לי מערך?
More informationהוראות לנבחן סף ובהם שמונה שאלות. עליך לענות על שש שאלות, על פי ההנחיות בכל פרק. גמר לבתי ספר לטכנאים ולהנדסאים
גמר לבתי ספר לטכנאים ולהנדסאים סוג הבחינה: מדינת ישראל אביב תשע"ב, 2012 מועד הבחינה: משרד החינוך 714001 סמל השאלון: תכנות מערכות בשפת C ושפת סף הוראות לנבחן א. משך הבחינה: ארבע שעות. ב. מבנה השאלון ומפתח
More informationתרגול 6 רקורסיה ותכנות מונחה עצמים
מבוא למדעי המחשב 2017 תרגול 6 רקורסיה ותכנות מונחה עצמים מבוא למדעי המחשב 1 ראינו בהרצאה רקורסיה תכנות מונחה עצמים: מחלקה ואובייקט שדות, בנאים ושיטות מימוש מערך דינאמי של ראשוניים בתרגול היום רקורסיה הדפסת
More informationPage 1 1 מס' מחברת : מס' ת.ז. : סמסטר א' תשס"ט מועד: א' 16/02/2009 משך הבחינה: שלוש שעות אין להשתמש בחומר עזר בחינה בקורס תכנות ב- C מרצים: אלון לרנר, עופר פסטרנק מתרגלים:
More informationמבוא לתכנות ב- JAVA תרגול 6
מבוא לתכנות ב- JAVA תרגול 6 מה בתרגול )methods( פונקציות/שיטות ב- Java הגדרת פונקציה קריאה/הפעלה העברת ארגומנטים ערכי החזרה מבוא לפונקציות- שימוש חוזר בקוד נניח שבמהלך תוכנית נדרשתם לחשב את הסכום של המספרים
More informationASP.Net Web API.
ASP.Net Web API 1 מה זה? Web API View בלבד ולא Data אותו מממש השרת והוא מחזיר לקליינט API הוא Web API הבקשה והתשובה הן בפרוטוקול Http\Https הקליינטים של Web API יכולים להיות רבים : אפשר להשתמש גם בMVC
More informationהפלט אחרי הביצוע של ההוראה :what3(root)
שאלה )18 1 נקודות( סעיף א. )11 נקודות( הפלט אחרי הביצוע של ההוראה :what3(root) 15 10 20 26 12 18 25 3 28 14 13 סעיף ב. )3 נקודות( הפונקציה what1 מוסיפה את האיבר node בסוף הרשימה ומעדכנת את ראש הרשימה *ph
More informationפתרון מוצע לבחינת מה"ט ב_שפת c מועד אביב תשע"ח, פברואר 8102 מחבר: מר שייקה בילו, מכללת אורט רחובות
פתרון מוצע לבחינת מה"ט ב_שפת c מועד אביב תשע"ח, פברואר 8102 מחבר: מר שייקה בילו, מכללת אורט רחובות שאלה מספר 1 התוכנית מגדירה חמישה משתנים שלמים: השלושה הראשונים הם שלושה מצביעים - *s *t,i. j ושלושה נוספים
More informationתכנות מונחה עצמים משחקים תשע"ו
move semantics 1 תכנות מונחה עצמים ופיתוח משחקים תשע"ו סמנטיקת ההעברה semantics( )Move move semantics 2 מטרה האצה של התוכניות, שיפור בביצועים על ידי חסכון בבנייה והעתקה של אובייקטים זמניים move semantics
More informationשאלה 1, סעיף ב )11 נק'(
שאלה 1, סעיף א )8 נק'( public static boolean lexlt(string s1, String s2) for (int i=0; i
More informationבמידה ולסעיף ניתנה תשובה ובנוסף נרשם לגבי הסעיף לא יודע/ת אזי הניקוד שיינתן
פקולטה: מדעי הטבע מחלקה: מדעי המחשב שם הקורס: מבוא למחשבים ושפת C קוד הקורס: 2-7028510 תאריך בחינה: שאלות חזרה למבחן. חשוב: אין להסיק ששאלות אחרות לא יכולות להישאל במבחן, אין להסיק כי נושאים מסויימים בסיליבוס
More informationPractical Session No. 14 Topological sort,amortized Analysis
Practical Session No. 14 Topological sort,amortized Analysis Topological- Sort Topological sort Ordering of vertices in a directed acyclic graph (DAG) G=(V,E) such that if there is a path from v to u in
More informationת ונכת סרוק תורשוקמ תומישר :יעישת רועיש 1
קורס תכנות שיעור תשיעי: רשימות מקושרות 1 הקצאה דינאמית של מערכים דו-ממדיים )לפחות( שלוש גישות אפשריות:.1 מערך של מערכים מצביעים לתוך מערך "גדול".2 3. מצביע יחיד למערך גדול 2 The Interface 3 (Simple) Usage
More informationתכנות מתקדם בשפת C משתנים
תכנות מתקדם בשפת C משתנים 1 משתנים סוגי משתנים בשפת C ההבדלים בין סוגי המשתנים השונים 2 /* This program computes m to the power of n */ /* Assumptions: m is an integer; n is a positive integer */ #include
More informationProgramming in C תרגול 8
Programming in C תרגול 8 1 1 נושאים מצביעים רקע אופרטורים על מצביעים מצביעים כפרמטרים לפונקציה הקצאת זיכרון דינאמית Malloc free מצביעים תאור הזיכרון של המחשב: ניתן לחשוב על זיכרון המחשב כעל רצף של תאים,
More informationנתונות שתי המחלקות הבאות:
ממבחנים שאלות מבנה הנתונים תור (queue) הוא מבנה הדומה למחסנית (stack) שנלמדה בקורס. לתור ניתן להוסיף איברים (ע"י פעולה הנקראת (enqueue וניתן להסיר את האיבר שבראש התור,(dequeue) כלומר האיבר הוותיק ביותר
More informationמבוא לתכנות ב- JAVA תרגול 5. Ipc161- practical session 5
מבוא לתכנות ב- JAVA תרגול 5 Ipc161- practical session 5 מה בתרגול מערכים דו ממדיים )methods( פונקציות/שיטות ב- Java הגדרת פונקציה קריאה/הפעלה העברת ארגומנטים ערכי החזרה מערך דו ממדי מערך של מערכים חד ממדיים
More information$ gcc check.c. $ a.out. $ gcc check.c -o check. $ check. $ gcc -Wall check.c -o check. #include <stdio.h>
תכנות בסיסי בשפת C תוכנית ראשונה תוכנית ב - C מורכבת מאוסף פונקציות והגדרות טיפוסים. C איננה שפה object oriented כך שאין בה מושגים של מחלקה ואובייקט. נתחיל בתוכנית הראשונה המסורתית, זו המדפיסה הודעה יחידה
More information- מבחן. - 4 עבודות ב- JAVA. הגשה בזוגות דרך ה- System Submission
1 - מבחן. - 4 עבודות ב- JAVA 60% 40% הגשה בזוגות דרך ה- System Submission 2 UML Class Diagrams Packages Class Path JAR Files חלק ראשון: חלק שני: 3 An abstraction of software features A structure that singles
More informationתוכנה 1 מערכים. Array Creation and Initialization. Array Declaration. Array Creation and Initialization. Loop through Arrays
מערכים Array: A fixed-length data structure for storing multiple values of the same type תוכנה 1 Example: An array of odd numbers: Indices (start from 0) 0 1 2 3 4 5 6 7 odds: 1 3 5 7 9 11 13 15 odds.length
More informationתוכנה 1 3 תרגול מס' מערכים ומבני בקרה
תוכנה 1 3 תרגול מס' מערכים ומבני בקרה מערכים Array: A fixed-length data structure for storing multiple values of the same type Example: An array of odd numbers: Indices (start from 0) 0 1 2 3 4 5 6 7 odds:
More informationתוכנה 1 מערכים. Array Creation and Initialization. Array Declaration. Loop through Arrays. Array Creation and Initialization
מערכים תוכנה 1 Array: A fixed-length data structure for storing multiple values of the same type Example from last week: An array of odd numbers: Indices (start from 0) 0 1 2 3 4 5 6 7 תרגול 2: מערכים
More informationמדעי המחשב 2 יחידות לימוד פתרון בחינת הבגרות פרק א. I x > a. פתרון 2: משפט switch
1 מדעי המחשב 2 יחידות לימוד פתרון בחינת הבגרות שאלה פרק א :1 m a b k k b x I x > a II x < b פלט I && II 0 8 12 8 4 1 9 11 2 10 11 9 8 2 12 35 13 העמודות המסומנות בכחול אינן עמודות חובה בפתרון. שאלה 2:
More informationתור שימושים בעולם התוכנה
מבוא למדעי המחשב הרצאה : Queue, Iterator & Iterable תור מבנה נתונים אבסטרקטי תור שימושים בעולם התוכנה השימושים של תורים בעולם התוכנה מזכירים מאוד תורים במציאות: )VoIP( )YouTube( מקלדת שידור סרט באינטרנט
More informationתרגול 3 מערכים ופונקציות
מבוא למדעי המחשב 2018 תרגול 3 מערכים ופונקציות מערכים מאפשרים עבודה עם מקבצים של נתונים פונקציות מאפשרות אבסטרקציה והאחדה של הקוד ראינו בהרצאה מערכים הצהרה, אתחול, גישה לאיברים במערך יצוג בזיכרון ובטבלת
More informationמבוא למדעי המחשב עבודה # 3
מבוא למדעי המחשב עבודה # 3 תרגיל זה עוסק ברקורסיות ובתכנות מונחה עצמים. הוראות כלליות לעבודה: ניתן ומומלץ להגיש את העבודה בזוגות. כל איחור בהגשת התרגיל יגרום להורדת ציון, כפי שהוגדר בנהלים שבאתר הקורס..1.2
More informationתוכנה 1 * לא בהכרח בסדר הזה
תוכנה 1 תרגול 7: מנשקים, פולימורפיזם ועוד * לא בהכרח בסדר הזה 2 מנשקים מנשקים מנשק )interface( הוא מבנה תחבירי ב- Java המאפשר לחסוך בקוד לקוח. מנשק מכיל כותרות של מתודות המימוש שלהן. )חתימות( ללא קוד אשר
More informationתרגילים ופתרונות בשפת - C הסתעפויות
תרגילים ופתרונות בשפת - C הסתעפויות כתב וערך: שייקה בילו תרגיל - 1 כתוב תוכנית שתקבל מהמשתמש שלושה מספרים, ותציג את הגדול מביניהם על המסך. #include void main() int mis1, mis2, mis3, max; printf("please
More informationתרגול מספר 3: מערכים
היום בתרגול:.1.2 תרגול מספר 3: מערכים מערך חד-מימדי: מה זה מערך ולמה צריך אותו? איך מגדירים? איך זה נראה בזכרון? דוגמאות לשימוש במערך חד-מימדי השוואה בין משתנה פרימיטיבי למשתנה שאינו פרימיטיבי מערך דו-מימדי:
More informationהוראות לנבחן גמר לבתי ספר לטכנאים ולהנדסאים סמל השאלון: תכנות מערכות ושפת סף ההנחיות בשאלון זה מנוסחות בלשון זכר, אך מכוונות לנבחנות ולנבחנים כאחד.
גמר לבתי ספר לטכנאים ולהנדסאים סוג הבחינה: מדינת ישראל אביב תשס"ז, 2007 מועד הבחינה: משרד החינוך 714001 סמל השאלון: תכנות מערכות ושפת סף הוראות לנבחן א. משך הבחינה: ארבע שעות. ב. מבנה השאלון ומפתח ההערכה:
More informationקורס תכנות בשיעור הקודם למדנו על רקורסיה שיעור שישי: מערכים פונקציה רקורסיבית שאלה חישוב נוסחאות רקורסיביות בשפת C
בשיעור הקודם למדנו על רקורסיה פתרנו את בעיית מגדלי הנוי בעזרת רקורסיה כלומר בעזרת פונקציה שקוראת לעצמה. רקורסיה מאפשרת לנו לפתור בעיה "גדולה" בעזרת פתרון של בעיות "קטנות" המרכיבות אותה. קורס תכנות שיעור
More informationמבוא למדעי המחשב תירגול 3:
מבוא למדעי המחשב תירגול 3: לולאות, קלט, וטיפוסים תוכנייה לולאת while קלט טיפוסי משתנים המרת טיפוסים טיפוס char מבוא למדעי המחשב מ' - תירגול 3 2 לולאת while מבוא למדעי המחשב מ' - תירגול 3 3 לולאת while
More informationחוברת תרגילים לתרגול יסודות התכנות
פעולות קלט ופלט חוברת תרגילים לתרגול יסודות התכנות קלוט 3 מספרים. סכם אותם, הצג את שלושתם ואת תוצאת הסיכום. int num1, num2, num3,sum; Console.WriteLine("please enter 3 numbers"); num1 = int.parse(console.readline());
More informationקורס תכנות שיעור שישי: מחרוזות, מצביעים
קורס תכנות שיעור שישי: מחרוזות, מצביעים מערכים אוסף סדור של משתנים מאותו סוג המשתנים נמצאים ברצף בזיכרון העברת מערך לפונקציה Define רקורסיה במערך מערכים דו מימדיים 2 מחרוזות מהי מחרוזת? רצף של תוים ייצוג
More informationתרגול 3 מערכים ופונקציות
מבוא למדעי המחשב 2017 תרגול 3 מערכים ופונקציות מערכים מאפשרים עבודה עם מקבצים של נתונים פונקציות מאפשרות אבסטרקציה והאחדה של הקוד ראינו בהרצאה מערכים הצהרה, אתחול, גישה לאיברים במערך יצוג בזיכרון ובטבלת
More informationגיליון תשובות על תשובות ריקות יינתן 20% מהניקוד!
גיליון תשובות על תשובות ריקות יינתן 20% מהניקוד! מספר נבחן: 30( שאלה 1 סעיף א )7 שני ת'רדים המפעילים את מתודת ה move על אחד משני גלגלים סמוכים מסוג SimpleGear הת'רד הראשון תופס את הגלגל הראשון this( שלו(,
More informationTutorial 10. Introduction to C++ שימו
Introduction to ++ שימו תרגול זה אינו התרגול הרישמי של הקורס. הוא מבוסס על חוברת התרגולים אך מכיל שינויים, הסברים נוספים ודוגמאות שונות או נוספות. + + תוכנ ית רא שונה ב הכרו ת עם + + תרגול // First ++
More informationמחרוזות ב Java ותכנות מונחה בדיקות )Test Driven Development(
מחרוזות ב Java ותכנות מונחה בדיקות )Test Driven Development( תוכנה 1 תרגול 8 String Immutability Strings are constants String s = " Tea "; s = s.trim(); s = s.replace('t', 'S'); s 1 2 3 " Tea " "Tea" "Sea"
More informationתוכנה 1 תרגול מספר 10: תרגיל חזרה חברת הייטק בית הספר למדעי המחשב אוניברסיטת תל אביב
1 תוכנה 1 תרגול מספר 10: תרגיל חזרה חברת הייטק בית הספר למדעי המחשב אוניברסיטת תל אביב 1 2 חברת הייטק בתרגיל זה נתרגל מספר נושאים אותם למדנו בשיעורים האחרונים: עיצוב ובניית מודל המורכב ממחלקות לתיאור סביבה
More informationסעיף ב )11 נקודות( public synchronized void advance(staircase staircase) throws InterruptedException staircase!
גיליון תשובות מספר נבחן: 03( שאלה 1 סעיף א )10 @INV: 0
More informationרשימות דילוגים Skip Lists
Lecture6 of Geiger & Itai s slide brochure www.cs.technion.ac.il/~dang/courseds רשימות דילוגים Skip Lists Skip lists: A probabilistic Alternative to Balanced Trees, William Pugh, Communications of the
More informationSimple Web Service. namespace MyService { public class Service1 : System.Web.Services.WebService {
Simple Web Service WS פתיחת פרוייקט File New Project ASP.Net web service project - >http://localhost/webservice1 יצירת שירות המחשב חיבור וחילוק 2 מספרים : הטיפוסים הבסיסיים using System; איסוף וניהוף אוספי
More informationמבוא למדעי המחשב תירגול 2: מבוא למדעי המחשב מ' - תירגול 2
מבוא למדעי המחשב תירגול 2: לולאות, קלט, וטיפוסים 1 תוכנייה לולאת while קלט טיפוסי משתנים המרת טיפוסים טיפוס char 2 לולאת while 3 לולאת while קטע קוד מתבצע שוב ושוב כל עוד תנאי מתקיים int number = 40; while(number>0)
More informationדף הדרכה ליצירת שרת/ לקוח עם GUI
דף הדרכה ליצירת שרת/ לקוח עם GUI בשיעורים הקודמים למדנו כיצד ליצור שרת לקוח פשוט, ויצירת טופס המכיל פקדים כלומר יצירת GUI למשתמש, בשיעור זה נרצה להראות את הדרך לשילוב בין השניים כלומר ליצור לקוח client
More informationקורס גרפיקה ממוחשבת 2008 סמסטר ב' ליאור שפירא 1 חלק מהשקפים מעובדים משקפים של פרדו דוראנד, טומס פנקהאוסר ודניאל כהן-אור
קורס גרפיקה ממוחשבת 2008 סמסטר ב' ליאור שפירא 1 חלק מהשקפים מעובדים משקפים של פרדו דוראנד, טומס פנקהאוסר ודניאל כהן-אור מרצה: ליאור שפירא liors@post.tau.ac.il אתר שלי: אתר הקורס: שעת קבלה: יום ג' 14-15
More informationמבוא למדעי המחשב השפעת השינוי על סטודנט הרצאה 18: פולימורפיזם ומחלקות אבסטרקטיות אם ברצוננו ששכר הלימוד לא יעלה על 2500.
public class { private static final int COURSE_PRICE = 1000; private String nae; private int id; private int nuofcourses; מבוא למדעי המחשב הרצאה 18 פולימורפיזם ומחלקות אבסטרקטיות תזכורת public (int id,
More informationגיליון תשובות מספר נבחן: סעיף ג (10 נקודות) הגדרת בטיחות הינה שמירה על האינווריאנטה של האובייקטים במהלך ההרצה.
גיליון תשובות מספר נבחן: (30 נקודות) שאלה 1 סעיף א (15 נקודות) remove() המתודה remove() גם משנה את מצב האובייקט,(command) וגם מחזירה ערך.(query) על פי עקרונות העיצוב שלמדנו בכיתה יש להפריד שאילתות מפקודות.
More informationספרית התבניות הסטנדרטית (STL) כתיבת אלגוריתמים גנריים מצביעים חכמים. .vector. list iterator נכיר תחילה את האוסף הפשוט ביותר בספריה
ספרית התבניות הסטנדרטית (STL) כתיבת אלגוריתמים גנריים מצביעים חכמים vector list iterator 2 קיימת בכל מימוש של ++C מכילה אוספים (Containers) ואלגוריתמים נכיר תחילה את האוסף הפשוט ביותר בספריה.vector מערך
More informationתרשים המחלקות ותרשים העצמים
1 תרשים המחלקות ותרשים העצמים חלק שלישי: ניתוח ועיצוב מערכות מידע באמצעות שימוש ב- UML ומתודולוגיית ה- Process )UP( Unified E1 3 E2 2 Outline UML Introduction Class Diagram Class Association Self association
More informationקורס תכנות שיעור שני: שימוש במשתנים,
קורס תכנות שיעור שני: שימוש במשתנים, בקרת זרימה, לולאות 1 נושאי השיעור היום משתנים )variables( טיפוסי משתנים בשפת C הגדרת משתנים השמה למשתנים פעולות על משתנים קליטת ערכים מהמשתמש הדפסה משתנים בקרת זרימה
More informationCommunication Networks ( ) / Spring 2011 The Blavatnik School of Computer Science, Tel-Aviv University. Allon Wagner
Communication Networks (0368-3030) / Spring 2011 The Blavatnik School of Computer Science, Tel-Aviv University Allon Wagner Kurose & Ross, Chapter 3.5.5, 3.7 (5 th ed.) Many slides adapted from: J. Kurose
More informationComputer Programming Summer 2017
Computer Programming Summer 2017 תרגול 6 פונקציות 1 פונקציות פונקציות מאפשרות שימוש בקטעי קוד כקופסה שחורה ללא צורך לדעת את פרטי המימוש )מספיק לדעת מה עושה הפונקציה ולא איך(. למשל: הפונקציה strlen מהתירגול
More informationמבוא לתכנות ב- JAVA מעבדה 3. Ipc161-lab3
מבוא לתכנות ב- JAVA מעבדה 3 Ipc161-lab3 נושאי התרגול ניפוי שגיאות לולאות בדיקת תרגילים בקורס )השוואת פלטים למול הפתרון המצופה( כיצד להפנות את פלט התוכנית לקובץ טקסט איך להשוות תכנים של שני קבצים בעזרת
More informationקורס תכנות רשימה מקושרת דוגמה: חיפוש מעבר על רשימה דוגמא: שחרור רשימה מקושרת דוגמא: הוספת אברים שלא בהתחלה
רשימה מקושרת רשימה היא אוסף סדור של ערכים פעולות רשימה לעומת מערך קורס תכנות שיעור עשירי: מיונים, חיפושים, קצת ניתוח זמני ריצה, קצת תיקון טעויות ועוד על רשימות 3 5 7 9 typedef struct node int data; struct
More information